<%
    /*@ 扩展对象的静态方法 */        
    Object.extend
    (
        Number,
        {
            //->检测最大值
            max:Math.max,
            //->检测最小值
            min:Math.min
        }
    );
    /*@ 扩展对象的原型方法 */    
    Object.extend
    (
        Number.prototype,
        {
            //->返回绝对值
            abs:function()
            {
                return Math.abs(this);
            },
            //->返回比当前整数大1的数
            ceil:function()
            {
                //4.1=-4,4.1=5
                return Math.ceil(this);
            },
            //->强制数值
            constrain:function($min,$max)
            {
                return (this>=$min&&this<=$max) ? this : (this<$min ? $min:$max);
            },                                
            //->返回比当前整数小1的数
            floor:function()
            {
                //4.1=-5,4.1=4
                return Math.floor(this);
            },
            //格式化数字
            format:function($dd,$isGroup,$sign)
            {
                var returnValue=String(($dd==undefined) ? this:(this.toFixed($dd)));    
                if($isGroup==true)
                {
                    while(returnValue.match(/(\d+)(\d{3})/))
                    {                    
                        returnValue=returnValue.replace(/(\d+)(\d{3})/,'$1'+($sign||',')+'$2')  
                    }  
                }
                return returnValue;
            },
            //->格式化货币
            formatCurrency:function($dd,$isGroup,$ls,$sign)
            {
                var returnValue=this.format($dd,$isGroup,$sign);
                return ($ls||'')+returnValue;
            },                    
            //->浮点数检测
            isFloat:function()
            {
                return (this==0) ? false:(parseInt(this)!=this);
            },            
            //->整数检测
            isInteger:function()
            {
                return parseInt(this)==this;
            },
            //->是否负数
            isNegative:function()
            {
                return this.sign()==-1 ? true:false;
            },                
            //->是否正数
            isPositive:function()
            {
                return this.sign()==1 ? true:false;
            },
            //->四啥五入的返回整数部分
            round:function()
            {
                //4.5=5,4.49=4
                return Math.round(this);
            },            
            //->数字符号检测
            sign:function()
            {
                if(this>0)
                    return 1;
                else if(this<0)
                    return -1;
                else
                    return 0;
            },            
            //->自加1
            succ:function($value)
            {
                return this+(($value==undefined||typeof($value)!='number') ? 1:$value);
            },
            //->迭代
            times:function($iterator)
            {
                //下标从0开始
                $R(0,this,true).each($iterator);
                return this;
            },    
            //->转换成2进制字符串
            toBinary:function()
            {
                var binaryLength=this.toString(2);
                if(binaryLength.length<=8)
                    return this.toPaddedString(8,2);
                else if(binaryLength.length<=16)
                    return this.toPaddedString(16,2);
                else if(binaryLength.length<=32)
                    return this.toPaddedString(32,2);
                else if(binaryLength.length<=64)
                    return this.toPaddedString(64,2);
                else
                    return this.toString(2);
            },        
            //->转换成货币显示方式
            toCurrency:function($ls,$dd)
            {
                return this.formatCurrency(($dd||2),true,($ls||'￥'));
            },    
            //->转换成在浮点数
            toFloat:function($dd)
            {
                return ($dd==undefined) ? parseFloat(this):this.toFixed($dd);
            },            
            //->转换成16进制字符串
            toHex:function()
            {
                return '0x'+this.toString(16);
            },
            //-->转换成整数
            toInteger:function($radix)
            {
                return parseInt(this,($radix||10));
            },            
            //->转换成8进制字符串
            toOct:function()
            {
                return '0'+this.toString(8);
            },            
            //->数字补全
            toPaddedString:function($length,$radix)
            {
                var string = this.toString($radix || 10);
                return '0'.times($length - string.length) + string;
            },            
            //->转换成百分数
            toPercent:function($dd,$isGroup)
            {
                //$dd(Decimal digits) -> 保留位数 
                return (this.isInteger()==true) ? (this*100).format(null,($isGroup||false))+'%' :( this*100).format($dd,($isGroup||false))+'%';
            }
        }
    );
    /*@ 扩展对象方法别名 */
    Object.extend
    (
        Number.prototype,
        {
            formatCurr:Number.prototype.formatCurrency,
            isInt:Number.prototype.isInteger,
            isReal:Number.prototype.isFloat,            
            limit:Number.prototype.constrain,
            toBin:Number.prototype.toBinary,
            toCurr:Number.prototype.toCurrency,
            toInt:Number.prototype.toInteger,            
            toReal:Number.prototype.toFloat                        
        }
    );
%>